Mobile computing devices have seen explosive growth over the past few years. With growing computational power and memory capacity, personal computing devices have become essential tools of modern life, providing telephone and text communications, navigation, photo, and video functionality in a package that fits in one's pocket. As a result of providing so many different types of radio frequency communications services and displaying high-quality video, many smart phones and similar mobile computing devices are now configured with a large number of programmable processors. Most devices included processors supplied by different companies, and are subject to different development and improvement cycles.
Currently, developers of programmable computing devices must configure each processor to interact with all other processors within the device. As electronic devices (e.g., smart phones) become even more sophisticated, the number and variations of processors (e.g., modem processors, GPS receivers, display processors, etc.) are increasing. Since device designs may change frequently and different model processors may be added in or swapped out, this need to configure processors can be time consuming and can lead to model testing failures when not properly completed. Additionally, many modern computing devices include an application processor and a number of other processors. For example, a smartphone may include an application processor that must function in conjunction with several other peer processors including, for example, a graphics processor, one or more modem processors, and a GPS processor.